The present invention relates generally to the routing of information across networks and, more particularly, to traffic shaping in multiservice networks.
Until recently there has persisted a fundamental dichotomy between two main types of telecommunication networks. The first type of telecommunication network, the telephone network, switches and transports predominantly voice, facsimile, and modulation-demodulation system (modem) traffic. The public switched telephone network (PSTN) is an example of this type of network. Telephone networks are also deployed privately within organizations such as corporations, banks, campuses, and government offices. The second type of telecommunication network, the data network, switches or routes and transports data and video between computers. The Internet is an example of a public data network; data networks may be privately deployed.
Telephone networks were developed and deployed earlier, followed by data networks. Telephone network infrastructures are ubiquitous, however, and as a result data networks typically are built, to a limited extent, using some components of telephone networks. For example, the end user access link to a data network in some cases is implemented with a dial-up telephone line. The dial-up telephone line thus connects the end user computer equipment to the data network access gateway. Also, high speed digital trunks interconnecting remote switches and routers of a data network are often leased from telephone long-haul carriers.
Nonetheless, telephone and data network infrastructures were typically deployed together with limited sharing of resources, especially with regards to the core components of the networksxe2x80x94the switches and routers that steer the payloads throughout the networks. Furthermore, multiservice network switches are used to provide a data path, or interface, between multiple networks, each of which may operate using a different type of data or according to a different networking standard protocol. Examples of the networking protocols supported by these multiservice switches include, but are not limited to, frame relay, voice, circuit emulation, T1 channelized, E1 channelized, and Asynchronous Transfer Mode (ATM). The cost of this redundancy coupled with advances in data network technology has led, where possible, to integrated network traffic comprising voice, data, facsimile, and modem information over a unified data network. As such, a network should now be able to accept, service, integrate, and deliver multiple types of data over its access links on a random, dynamic basis using a minimum set of hardware on a single platform. This is typically accomplished using network routers, or concentrators, that provide for dynamic allocation of network resources among the received channels of information on an as-needed basis, wherein the cost, size, and complexity of the router is reduced by minimizing the duplication of resources among router channels.
One type of network technology, ATM, is a connection based technology designed to provide flexible use of network bandwidth in order to support users having diverse service requirements. The functionality provided by a concentrator in an ATM network comprises supporting the Quality of Service (QoS) for each virtual circuit (VC), or connection, supported by the router. The QoS is a set of parameters and measurement procedures defined to quantify loss, errors, delay, and delay variation. The QoS is established when the VCs are established, and the QoS parameters include loss rate, acceptable delay, and peak and average data rates.
A network determines, when a connection request is made, whether sufficient resources exist to allow the connection to be established with the requested parameters, while not impacting the QoS of established connections. If sufficient resources do not exist to support the requested QoS, the connection request is rejected. If sufficient resources do exist to support the requested QoS, a connection is established, and the network ensures that each transmitting station meets the QoS for each VC of that station. Traffic shaping is a procedure used at the transmitting end station and intermediate stations to ensure that the QoS is supported. Traffic shaping parameters typically comprise sustained cell rate (SCR), peak cell rate (PCR), and maximum burst cell count (MBC).
Traffic shaping ensures support of the QoS for established connections by ensuring that the transmission rate for any given VC does not exceed the peak or average data rate allowed for that VC. Specifically, traffic shaping functionality allows an ATM device to control an outgoing cell stream such that the SCR does not exceed a prescribed SCR at any given time, the PCR does not exceed a prescribed PCR at any given time, and the MBC does not exceed a prescribed MBC at any given time. Typical traffic shaping mechanisms require the use of counters, timers, and control logic for each one of the potential VCs of a network station. In particular, at least one timer is used to control the SCR and PCR of a cell transmission. The problem with the typical mechanisms, however, is that, as the number of VCs of a typical network station is large, and as the router must simultaneously support QoS standards for this large number of VCs, the chip silicon area and die size required for the associated counters and timers is significant. Furthermore, and even more problematic, is that in low cost, low speed networks, for example ATM over T1, the additional timer interrupts cause an excessive processor load.
It is therefore an object of the invention to provide efficient traffic shaping in Asynchronous Transfer Mode (ATM) networks without the use of timers.
It is a further object of the invention to control the timing of cell transmission over ATM networks using a signal generated by the ATM layer upon cell transmission.
It is a further object of the invention to reduce the processing loads on network processors of low speed ATM networks by reducing timer interrupts.
These and other objects of the invention are provided by a Multiservice Access Concentrator (MAC), wherein traffic shaping, or control of cell transmission through a network, comprises allocating at least one cell stream to at least one cell slot of a cell scheduling table. A cell slot and a corresponding cell stream are designated in response to a cell interrupt signal generated following cell transmission. At least one counter and at least one credit buffer are maintained, and a service class of the designated cell stream is determined. Maintaining at least one counter comprises maintaining an individual counter for each cell stream, wherein the individual counter increments following each transmission of a cell of the corresponding cell stream. Furthermore, a global counter is maintained that increments following each transmission of a cell.
A cell of the designated cell stream is transmitted in response to the determined service class and a count of the at least one counter and contents of the at least one credit buffer. When the service class is determined to be constant bit rate (CBR), a cell is transmitted. When the service class is determined to be variable bit rate (VBR) a credit buffer is generated. The size of the credit buffer is determined by a maximum burst cell size (MBC) of the corresponding cell stream and virtual circuit (VC). The credit buffers are grouped along with the corresponding cell streams in at least one group according to Quality of Service (QoS) parameters.
A determination is made as to whether the MBC has been exceeded for the designated cell stream. In response to a determination that the MBC has not been exceeded, the credit buffer of the designated cell stream is incremented, wherein cell credit is accumulated based on a sustained cell rate (SCR) of the designated cell stream. A counter difference is determined by subtracting the individual counter associated with the designated cell stream from the value of the global counter. A cell of the designated cell stream is transmitted when the counter difference equals an inverse of a peak cell rate (PCR) and the credit buffer of the designated cell stream contains credit. Cell transmission may burst to a PCR until cell credit is exhausted. Transmission of the cell of the designated cell stream is based on the accumulated cell credit. The credit buffer of the designated cell stream is decremented in response to cell transmission, wherein cell credit is consumed upon cell transmission. Cell transmission timing is controlled using the cell interrupt signal, wherein the cell interrupt signal emulates a clock signal.
Other objects, features, and advantages of the present invention will be apparent from the accompanying drawings and from the detailed description which follows below.